package shuxue;

import java.util.Scanner;

/**
 * 最大公约数：
 *  24：1 2 3 4 6 8 12 24
 *  15：1 3 5 15 
 *  
 *思路1： 欧几里得方法，辗转相除 ，定义最大公约数为gcd(a,b),假定a》=b
 *   gcd(24,15) =》gcd(15,24%15)==gcd(15,9) =>gcd(9,15%9)==gcd(9,6) 
 *   					=>gcd(6,9%6)==gcd(6,3) =》gcd(3,0),若b=0，则a为结果
 * 另一种表述：有一个广场，大小是24列，15行，用瓷砖将广场铺满，问瓷砖大小（K）最大为多少？
 * 思路2：递归
 * 
 * 
 * 最小公倍数
 * 8: 8,16,24,32
 * 12:12,24,36,48
 * 
 * ===(a*b)/gcd(a,b)
 */


public class Gcd {

	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		int a = sc.nextInt();
		int b = sc.nextInt();
		
		System.out.println(gcd(a,b));
	}
	
	public static int gcd(int a,int b) {
		while(b>0) {
			int temp = a%b;
			a = b;
			b = temp;
		}
		return a;
	}
	
	public static int gcd2(int a,int b) {
	
		return b==0?a:gcd2(b,a%b);
		
	}
	
}





















